package com.vhall.component.plugin.common.annotation;

import com.vhall.component.plugin.common.utils.CheckTimeIntervalValidator;

import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.*;

/**
 * 始时间不能晚于结束时间校验、格式校验
 * 支持yyyy-MM-dd 、 yyyy-MM-dd HH:mm:ss
 *
 * @author zhangtao
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = CheckTimeIntervalValidator.class)
@Documented
public @interface CheckTimeInterval {
    /**
     * 开始时间字段
     */
    String startTime() default "startTime";

    /**
     * 结束时间字段
     */
    String endTime() default "endTime";

    /**
     * 允许时间相同
     */
    boolean equal() default true;

    String message() default "时间输入有误";

    Class<?>[] groups() default {};

    Class<? extends Payload>[] payload() default {};


}
